
package com.yanboo.logging.domain;

import com.yanboo.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import jakarta.persistence.*;
import jakarta.validation.constraints.NotBlank;
import java.io.Serializable;

/**
 * 支付宝配置类
 */
@Data
@Entity
@Table(name = "tool_alipay_config")
public class AlipayConfig extends BaseEntity implements Serializable {

    @NotBlank
    @Schema(description = "应用ID")
    private String appId;

    @NotBlank
    @Schema(description = "商户私钥")
    @Column(length = 4000)
    private String privateKey;

    @NotBlank
    @Schema(description = "支付宝公钥")
    @Column(length = 4000)
    private String publicKey;

    @Schema(description = "签名方式")
    private String signType="RSA2";

    @Column(name = "gateway_url")
    @Schema(description = "支付宝开放安全地址", hidden = true)
    private String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";

    @Schema(description = "编码", hidden = true)
    private String charset= "utf-8";

    @NotBlank
    @Schema(description = "异步通知地址")
    private String notifyUrl;

    @NotBlank
    @Schema(description = "订单完成后返回的页面")
    private String returnUrl;

    @Schema(description = "类型")
    private String format="JSON";

    @NotBlank
    @Schema(description = "商户号")
    private String sysServiceProviderId;
}
